package billing.i.dao;

import java.io.Serializable;
import java.util.List;
import java.util.Map;

public interface IDAO<T> {
	/**
	 * 添加对象至数据库
	 * @param object 实体
	 * @return 返回是否添加成功
	 */
	public int addObject(T object);

	/**
	 * 根据id删除记录
	 * @param id
	 * @return 删除是否成功
	 */
	public int deleteObjectById(Serializable id);

	/**
	 * 更新数据库信息
	 * @param object 具体数据
	 * @return 更新是否成功
	 */
	public int updateObject(T object);

	/**
	 * 查询全部
	 * @return 
	 */
	public List<T> selectAllObjects();

	/**
	 * 根据条件查数据
	 * 
	 * @param name
	 *            学生姓名
	 * @return 学生信息列表
	 */
	public List<T> selectObjectByCond(Map<String,Object> params);

	/**
	 * 根据id查询
	 * @param id
	 * @return 学生对象
	 */
	public T selectObjectById(Serializable id);
}
